perm filename TEST.LST[S1,ALS] blob
sn#491657 filedate 1979-12-30 generic text, type T, neo UTF8
PASCAL/SAIL 1.1 6-SEP-79 COMPILATION LIST PRODUCED ON 30-DEC-79 AT 13:58:43 PAGE 1
1 C;
PASCAL/SAIL 1.1 6-SEP-79 COMPILATION LIST PRODUCED ON 30-DEC-79 AT 13:58:43 PAGE 2
1 PROGRAM TEST;
2
3 CONST ZERO = 0; ONE = 1; MAX = 1000000000; (* 10**9 *)
4
5 VAR A,A2, B, B2, C, C2, COUNT : INTEGER;
6 N, X, Y, Z, LAST : INTEGER;
7 PTAB : ARRAY [1..5000] OF INTEGER;
8 FTAB : ARRAY [1..50] OF INTEGER;
9
10 PROCEDURE PRIME;
11 BEGIN
12 N := 11; X := 2; LAST := 4;
13 PTAB[1] := 2; PTAB[2] := 3; PTAB[3] := 5; PTAB[4] := 7;
14 WHILE LAST < 5000 DO
15 BEGIN
16 WHILE ((N DIV PTAB[X]) >= PTAB[X]) DO
17 BEGIN
18 IF N MOD PTAB[X] = 0 THEN
19 BEGIN
20 N := N + 2; X := 2;
21 END
22 ELSE
23 BEGIN
24 X := X + 1;
25 END;
26 END;
27 LAST := LAST + 1;
28 PTAB[LAST] := N;
29 IF LAST > 4990 THEN BEGIN WRITELN(TTY,LAST:6,N:20); BREAK; END;
30 X := 2; N := N + 2;
31 END;
32 END;
33
34 FUNCTION TESTN (VAR N2, N1 : INTEGER) : BOOLEAN;
35 VAR Y : INTEGER;
36 BEGIN
37 X := 1;
38 Y := PTAB[X];
39 TESTN := TRUE;
40 IF N2 > 0 THEN
41 BEGIN
42 WHILE (N2 >= Y) OR (((N2 MOD Y) * MAX + N1) DIV Y >= Y) DO
43 BEGIN
44 IF (((N2 MOD Y) * MAX + N1) MOD Y) <> 0 THEN
45 BEGIN
46 X := X + 1; Y := PTAB[X];
47 END
48 ELSE
49 BEGIN
50 TESTN := FALSE;
51 Y := MAX;
52 END;
53 END;
54 END
55 ELSE
56 BEGIN
57 WHILE N1 DIV Y >= Y DO
58 BEGIN
59 IF N1 MOD Y <> 0 THEN
60 BEGIN
61 X := X + 1;
62 Y := PTAB[X];
63 END
64 ELSE
65 BEGIN
66 TESTN := FALSE;
67 Y := N1;
68 END;
69 END;
70 END;
71 END;
72
73 BEGIN
74 PRIME;
75 A := 3; A2 := 0;
76 B := 5; B2 := 0;
77 COUNT := 5;
78 WHILE COUNT < 50 DO
79 BEGIN
80 IF MAX DIV 2 < B THEN
81 BEGIN WRITELN(TTY,' C>MAX '); BREAK; END;
82 C := A + B; C2 := A2 + B2;
83 IF C >= MAX THEN
84 BEGIN
85 C2 := C2 + 1; C := C - MAX;
86 END;
87 A := B; A2 := B2;
88 B := C; B2 := C2;
89 COUNT := COUNT + 1;
90 Y := 0;
91 IF TEST(Y,COUNT) THEN
***** ↑ ******** ↑
1.↑: IDENTIFIER NOT DECLARED
2.↑: TYPE OF OPERAND(S) MUST BE BOOLEAN
92 IF TESTN(B2,B) THEN
93 BEGIN
94 WRITELN(OUTPUT, COUNT:11,B2:12,B:12);
95 WRITE(TTY,COUNT:11,B:12); BREAK;
96 END;
97 END;
98 END.
2 ERROR(S) DETECTED
RUNTIME: 00:00.283 ELAPSED: 00:00:01.1 2303 CHARS